package com.example.course.service;

import com.example.course.bean.Topic;
import com.baomidou.mybatisplus.extension.service.IService;
import com.example.course.dto.TopicDTO;
import com.example.course.vo.TopicVO;

import java.util.List;

/**
 * @author Jasmine-drs
 * @description 针对表【topic(题库表)】的数据库操作Service
 * @createDate 2025-04-22 15:36:40
 */
public interface TopicService extends IService<Topic> {

	/**
	 * 教师添加题目
	 *
	 * @param topicDTO  题目信息
	 * @param isTeacher 是否为教师
	 * @return 题目视图对象
	 */
	TopicVO addTopic(TopicDTO topicDTO, boolean isTeacher);

	/**
	 * 教师删除题目
	 *
	 * @param id        题目ID
	 * @param isTeacher 是否为教师
	 * @return 是否删除成功
	 */
	boolean deleteTopic(Integer id, boolean isTeacher);

	/**
	 * 获取题目列表
	 *
	 * @return 题目列表
	 */
	List<TopicVO> getTopicList();

	/**
	 * 根据ID获取题目
	 *
	 * @param id 题目ID
	 * @return 题目视图对象
	 */
	TopicVO getTopicById(Integer id);
}
